package com.caioweb.osa.modelo;

import static com.caio.svn.Configuracoes.TXT_DADOS;
import static com.caio.svn.Configuracoes.TXT_ESTRUTURA;

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.InputStream;
import java.io.Serializable;
import java.util.Date;
import java.util.List;

import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany;

import org.hibernate.annotations.Cascade;
import org.primefaces.model.DefaultStreamedContent;
import org.primefaces.model.SelectableDataModel;
import org.primefaces.model.StreamedContent;

@Entity
public class Historico implements Serializable {

	@Id
	@GeneratedValue
	private Long id;
	@Column(name = "revisao_ini")
	private Integer revisaoInicial;
	@Column(name = "revisao_fin")
	private Integer revisaoFinal;
	@ManyToOne
	@JoinColumn(name = "id_ambiente")
	private Ambiente ambiente;
	@ManyToOne
	@JoinColumn(name = "id_usuario")
	private Usuario usuario;
	private String arquivo;
	@OneToMany(mappedBy = "historico",cascade=CascadeType.PERSIST,fetch = FetchType.EAGER)
	private List<Arquivo> arquivos;
	private Date data;
	private String nrChamado;



	public Long getId() {
		return id;
	}

	public void setId(Long id) {
		this.id = id;
	}

	public Ambiente getAmbiente() {
		return ambiente;
	}

	public void setAmbiente(Ambiente ambiente) {
		this.ambiente = ambiente;
	}

	public Usuario getUsuario() {
		return usuario;
	}

	public void setUsuario(Usuario usuario) {
		this.usuario = usuario;
	}

	public String getArquivo() {
		return arquivo;
	}

	public void setArquivo(String arquivo) {
		this.arquivo = arquivo;
	}


	public Integer getRevisaoInicial() {
		return revisaoInicial;
	}

	public void setRevisaoInicial(Integer revisaoInicial) {
		this.revisaoInicial = revisaoInicial;
	}



	public List<Arquivo> getArquivos() {
		return arquivos;
	}

	public void setArquivos(List<Arquivo> arquivos) {
		this.arquivos = arquivos;
	}

	public Integer getRevisaoFinal() {
		return revisaoFinal;
	}

	public void setRevisaoFinal(Integer revisaoFinal) {
		this.revisaoFinal = revisaoFinal;
	}

	public Date getData() {
		return data;
	}

	public void setData(Date data) {
		this.data = data;
	}

	public String getNrChamado() {
		return nrChamado;
	}

	public void setNrChamado(String nrChamado) {
		this.nrChamado = nrChamado;
	}
	
}
